Running CFA binary variables return low factor loading?

Good morning, guys. I'm running a SEM using DWLS estimator in R. I'm wondering when I tested for validity, two of my construct consist of Likert-type questions (to measure behavior) and the other two consist of 8 binary items each (to measure knowledge, each 1 represents a correct answer), the problem is when i test for validity and reliability the factor loadings of Likert-type items is relatively high (0.7+) while the binary is extremely low (0.1-0.3). Is this a good way to measure the “Knowledge” construct? If so, why is the loadings of binary items are so so low?